Neural Networks for Machine Learning Lecture 11
课程地址:https://www.coursera.org/learn/neural-networks
老师主页:http://www.cs.toronto.edu/~hinton
备注:笔记内容和图片均参考老师课件。
这一章中间一部分感觉完全没听懂在干嘛,这里就总结下Hopfield Nets的定义以及玻尔兹曼机。
Hopfield Nets
Hopfield Nets是由二进制神经元组成的递归神经网络,非线性递归神经网络往往很难分析,John Hopfield等人注意到如果链接是对称的,存在一个全局能量函数(这里能量的含义为一种度量的意思),来看能量函数的定义:
这个公式让我们能够计算开关某个神经元对于能量的影响:
找到能量最低的点的方法为从一个随机的初始状态开始,每次以随机的顺序改变一个神经元,来看如下操作步骤:
这样迭代下去最终会停止,但是不一定会达到能量最小的状态,对于这个网络,能量最小的状态如下:
Noisy networks find better energy minima
因为Hopfield Nets用贪心算法进行更新,所以难免会遇到局部最优的情况,老师介绍的方法引入“噪音”,将神经元换成满足以下性质的随机变量
Boltzmann Machine
玻尔兹曼机可以用来计算每个二进制向量出现的概率,可以用来判断二进制向量是否属于同一分布,例如核电站的异常检测,以及文本的检测等等,利用如下公式计算:
这里概率的计算方式是通过能量,如下:
其中能量用如下公式计算:
利用这个计算式,可以得到如下公式:
以一个具体例子来说明:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Doraemonzzz!
评论
ValineLivere